static gboolean dummy;
-#ifdef HAVE_W32_DWM
-static HMODULE dwmdll = NULL;
-PFN_DwmEnableBlurBehindWindow dwmEnableBlurBehindWindow = NULL;
-PFN_DwmIsCompositionEnabled dwmIsCompositionEnabled = NULL;
-#endif
-
const GOptionEntry _gdk_windowing_args[] = {
{ "sync", 0, 0, G_OPTION_ARG_NONE, &gdk_synchronize,
/* Description of --sync in --help output */ N_("Don't batch GDI requests"), NULL },
_cf_text_html = RegisterClipboardFormat ("text/html");
_gdk_win32_selection_init ();
-
-/* HAVE_W32_DWM means that we have necessary declarations at compile-time,
- * but we'd still like to be able to run on XP, so we'll load the functions
- * we need at runtime.
- */
-#ifdef HAVE_W32_DWM
- if (dwmdll == NULL)
- {
- dwmdll = LoadLibraryA ("dwmapi.dll");
- if (dwmdll == NULL)
- {
- /* This will make sure that we only try this once */
- dwmdll = INVALID_HANDLE_VALUE;
- }
- else
- {
- dwmEnableBlurBehindWindow = (PFN_DwmEnableBlurBehindWindow)
- GetProcAddress (dwmdll, "DwmEnableBlurBehindWindow");
- dwmIsCompositionEnabled = (PFN_DwmIsCompositionEnabled)
- GetProcAddress (dwmdll, "DwmIsCompositionEnabled");
- }
- }
-#endif
}
void
#include "config.h"
-#ifdef HAVE_W32_DWM
-#include <dwmapi.h>
-typedef HRESULT (WINAPI *PFN_DwmEnableBlurBehindWindow)(HWND,
- const DWM_BLURBEHIND *);
-typedef HRESULT (WINAPI *PFN_DwmIsCompositionEnabled)(BOOL *pfEnabled);
-extern PFN_DwmEnableBlurBehindWindow dwmEnableBlurBehindWindow;
-extern PFN_DwmIsCompositionEnabled dwmIsCompositionEnabled;
-#endif
-
/* Make up for some minor w32api or MSVC6 header lossage */
#ifndef PS_JOIN_MASK
GdkAtom atom);
void _gdk_win32_append_event (GdkEvent *event);
void _gdk_win32_emit_configure_event (GdkWindow *window);
-gboolean _gdk_win32_is_desktop_composition_enabled ();
/* Initialization */
void _gdk_win32_windowing_init (void);
{
g_return_val_if_fail (GDK_IS_SCREEN (screen), FALSE);
- return _gdk_win32_is_desktop_composition_enabled ();
-}
-
-gboolean
-_gdk_win32_is_desktop_composition_enabled ()
-{
- BOOL b;
- DWORD sysver, major, minor;
- sysver = GetVersion ();
- major = (DWORD)(LOBYTE (LOWORD (sysver)));
- minor = (DWORD)(HIBYTE (LOWORD (sysver)));
- /* Composition is always enabled in W8 */
- if (major >= 6 && minor >= 2)
- return TRUE;
-
- if (dwmIsCompositionEnabled && (S_OK == dwmIsCompositionEnabled (&b)))
- return b;
return FALSE;
}
screen = gtk_widget_get_screen (widget);
- if (!gdk_screen_is_composited (screen))
- return FALSE;
-
/* We need a visual with alpha */
visual = gdk_screen_get_rgba_visual (screen);
if (!visual)